Distribution of software features (such as new software products or new versions thereof) is a common activity in a data processing system. A typical case is that of a network with a great number of workstations, wherein a software configuration of each workstation is periodically updated; for example, the software products installed on the workstation are upgraded, or the software configuration of the workstation is modified to comply with a profile or organisational change.
Different software distribution applications have been proposed in the last years to assist a system administrator in efficiently managing deployment of the new software configurations to (client) workstations of the network. A software distribution application runs on a server workstation of the network and controls building of packages including the software products to be installed and instructions understandable by the client workstations. Each package is distributed to the respective client workstation through the network; the instructions embedded in the package cause the software products to be automatically installed or removed in order to reach the desired software configuration of the client workstation.
Several types of operating systems running on the client workstations allow different user profiles to be defined. As a consequence, a user can log onto the workstation with a selected profile, and then work in a corresponding desired context. The context defines an operating environment specific for the user, for example with different software products available, operations to be executed automatically, shortcuts on a desktop, personal configuration parameters, authorisation for using system resources or for executing certain operations, and the like.
The solutions known in the art do not manage the above-described scenario in a satisfactory manner. Particularly, no support is provided to the administrator for setting specific software configurations for the various users of the workstations. In fact, an agent of the software distribution application usually runs in a context of a privileged profile, in order to have all the authorizations needed to install or remove the software products. However, the configuration information for a specific context cannot be modified from a different context for security reasons, not even if the different context is associated with the privileged profile. Therefore, the software distribution application is unable to define software configurations customised for the different users.
It is an object of the present invention to overcome the above-mentioned drawbacks. In order to achieve this object, a method as set out in the first claim is proposed.